/* -*- C++ -*- */

//=============================================================================
/*
 * @author Feloweria <380374483@qq.com>
 * Copyright (C) Feloweria
 * 
 * $ID 2013-09-27 07:45:52 PM
 * 
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details
 * 
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 * 
 * @version 1.0
 */
//=============================================================================

#ifndef FELOWRIA_TIME_VALUE_INCLUDE
#define FELOWRIA_TIME_VALUE_INCLUDE

#ifdef __linux__
#include <time.h>
#endif

#include "Felowria.h"

FELOWRIA_BEGIN

#define TIME_ONE_DAY				TIME_ONE_HOUR * 24
#define TIME_ONE_HOUR				TIME_ONE_MINUTE * 60
#define TIME_ONE_MINUTE				TIME_ONE_SECOND * 60
#define TIME_ONE_SECOND				1.0f
#define TIME_ONE_MILLI_SECOND		TIME_ONE_SECOND / 1000
#define TIME_ONE_MICRO_SECOND 		TIME_ONE_SECOND / 1000 / 1000
#define TIME_ONE_NAO_SECOND 		TIME_ONE_SECOND / 1000 / 1000 / 1000

typedef double TimeValue;

#ifdef __linux__
timespec ToTimespec(Felowria::TimeValue time_value);
#endif


FELOWRIA_END

#ifdef __linux__
#include "TimeValue.inl"
#endif

#endif // FELOWRIA_TIME_VALUE_INCLUDE
